package com.ruoyi.tplus.controller;

import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.tplus.config.RepeatSubmit;
import com.ruoyi.tplus.service.ITPlusService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.Map;

/**
 * @author zhanglimin
 * 销货单
 */
@RestController
@RequestMapping("/tplus")
public class TPlusClckdController extends BaseController {

    Logger LOGGER = LoggerFactory.getLogger(TPlusClckdController.class);

    @Autowired
    private ITPlusService tplusService;

    /**
     * 材料出库单上传
     *
     * 简道云在向目标服务器推送请求后，
     * 如果目标服务器未在2秒内使用2xx作为响应的状态码进行响应，
     * 简道云会认为数据推送失败，并进行重试。一次推送重试最多5次，
     * 如果单次推送连续重试5次均失败，则该次推送失败
     * OR(AND(EXACT(业务类型,"41-直接领料") ,子表单.数量>0),AND(EXACT(业务类型,"42-直接退料"),子表单.数量<0))
     */
    @RequestMapping("/clckd")
    @RepeatSubmit
    public AjaxResult tplusclckd( @RequestBody String temp){

        JSONObject entries = JSONUtil.parseObj(temp);//data
//        Object voData = entries.get("data");//
//
////        TPlusXhd xhd = (TPlusXhd) voData;
//        JSONObject entries1 = JSONUtil.parseObj(voData);
//        TPlusXhd xhd = (TPlusXhd) entries1;
//        List<TPlusXhdS> xhds = (List<TPlusXhdS>) entries1.get("entity");
//        LOGGER.info(temp);
        Map map = tplusService.insertOrUpdateClckd(temp);
        return AjaxResult.success();
    }
}
